home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1996 #15 / Monster Media Number 15 (Monster Media)(July 1996).ISO / wildcat / net_port.zip / NETXPORT.WCX (.txt) < prev    next >
Wildcat! WCX  |  1996-04-19  |  7KB  |  435 lines

  1. '! Decompiled with wccNosy version 4.20f (freeware)
  2. '! Input File: in.wcx  6787 bytes  03/09/122  08:19:18am
  3. '! Code Segment Size  :5327 bytes
  4. '! Data Segment Size  :4917 bytes
  5. '! String Segment Size:1460 bytes
  6. '! Compiled with WCC version 4.12
  7.  
  8.       Declare Function Func4076(l65534 As Long, l65532 As Long) As Integer
  9.       Declare Sub Sub4700(i65534 As Integer, s65532 As String)
  10.       Declare Sub Sub5014(s65534 As String)
  11.  
  12.       Dim s4463 As String
  13.       Dim l4467 As Long
  14.       Dim i4471 As Integer
  15.       Dim s4473 As String
  16.       Dim s4477 As String
  17.       Dim s4481 As String
  18.       Dim s4485 As String
  19.       Dim s4489 As String
  20.       Dim s4493 As String
  21.       Dim s4497(0 To 12) As String*3
  22.       Dim mh4536 As MessageHeader
  23.       Dim i4856 As Integer
  24.       Dim i4858 As Integer
  25.       Dim i4860 As Integer
  26.       Dim i4862 As Integer
  27.       Dim i4864 As Integer
  28.       Dim i4866 As Integer
  29.       Dim i4868 As Integer
  30.       Dim i4870 As Integer
  31.       Dim i4872 As Integer
  32.       Dim i4874 As Integer
  33.       Dim i4876 As Integer
  34.       Dim i4878 As Integer
  35.       Dim s4880 As String*1
  36.       Dim s4881 As String*1
  37.       Dim s4882 As String*1
  38.       Dim s4883 As String
  39.       Dim s4887 As String*1
  40.       Dim s4888 As String*1
  41.       Dim i4891 As Integer
  42.       Dim s4893 As String
  43.       Dim s4897 As String
  44.       Dim s4901 As String
  45.       Dim i4905 As Integer
  46.       Dim i4907 As Integer
  47.       Dim i4909 As Integer
  48.       Dim s4911 As String
  49.       Dim i4915 As Integer
  50.  
  51.       Dim l65512_ As Long
  52.       Dim i65516_ As Integer
  53.       Dim i65518_ As Integer '! Temporary
  54.       Dim i65520_ As Integer '! Temporary
  55.       Dim i65522_ As Integer '! Temporary
  56.       Dim i65524_ As Integer '! Temporary
  57.       Dim l65526_ As Long
  58.       Dim i65530_ As Integer
  59.       Dim l65532_ As Long '! Temporary
  60.  
  61.       s4463 = "V1.08ß"
  62.       GoSub 74
  63.       GoSub 519
  64.       GoSub 1085
  65.       GoSub 3873
  66.       End 
  67.    74 EnablePages 0
  68.       i4471 = 0
  69.       l4467 = 0
  70.       i4891 = 0
  71.       s4497(1) = "Jan"
  72.       s4497(2) = "Feb"
  73.       s4497(3) = "Mar"
  74.       s4497(4) = "Apr"
  75.       s4497(5) = "May"
  76.       s4497(6) = "Jun"
  77.       s4497(7) = "Jul"
  78.       s4497(8) = "Aug"
  79.       s4497(9) = "Sep"
  80.       s4497(10) = "Oct"
  81.       s4497(11) = "Nov"
  82.       s4497(12) = "Dec"
  83.       i4891 = 0
  84.       s4880 = Chr(0)
  85.       s4881 = Chr(13)
  86.       s4882 = Chr(1)
  87.       Return 
  88.   519 s4893 = ProgPath + "NetXport.CFG"
  89.       If ParamCount > 0 Then
  90.         s4893 = ProgPath + ParamStr(1)
  91.       End If
  92.   559 s4897 = TempPath + "TEMPFILE.TXT"
  93.       If Not Exists(s4893) Then
  94.         Cls 
  95.         Locate 10, 5
  96.         Print "I can't find your " + s4893
  97.         Pause 
  98.         End 
  99.       End If
  100.   617 Open s4893 For Input As 1
  101.       Input #1, s4473
  102.       Input #1, s4477
  103.       Input #1, s4481
  104.       Input #1, s4485
  105.       Input #1, s4489
  106.       Input #1, l4467
  107.       Close 1
  108.       i4471 = 0
  109.       If Func4076(l4467, (10582)) Then
  110.         i4471 = -1
  111.       End If
  112.   729 s4883 = "NetXPort " + s4463 + ", UNREGISTERED"
  113.       If i4471 Then
  114.         s4883 = "NetXPort " + s4463 + ", Registered to " + MakeWild.RegString
  115.       End If
  116.   797 Cls 
  117.       Locate 0, 0
  118.       Print "@NOPAUSE@"
  119.       Print s4883
  120.       Print "OmniBBS Systems (c)"
  121.       Print "Charles Meadows"
  122.       UpdateScreen 
  123.       Print " "
  124.       Print "Using CFG file "; s4893
  125.       UpdateScreen 
  126.       If Right(s4485, 1) <> "\" Then
  127.         s4485 = s4485 + "\"
  128.       End If
  129.   907 Sub5014(s4481)
  130.       i4862 = i4860
  131.       i4868 = i4866
  132.       i4874 = i4872
  133.       i4907 = i4905
  134.       Print " "
  135.       Print "Verifing existance of netmail directory"
  136.       UpdateScreen 
  137.       s4883 = s4485 + "NetXPort.TsT"
  138.       Open s4883 For Output As 1
  139.       Print #1, " "
  140.       Close 1
  141.       If Not Exists(s4883) Then
  142.         Cls 
  143.         Locate 10, 5
  144.         Print "I can't find your " + s4485 + "Netmail Directory!"
  145.         Pause 
  146.         End 
  147.       End If
  148.  1077 Del s4883
  149.       Return 
  150.  1085 Join Val(s4473)
  151.       GoSub 1328
  152.       Print " "
  153.       Print "Reading WildCat Messages in conference #"; s4473
  154.       UpdateScreen 
  155.  1155 For i4856 = Val(s4477) To GetHighMessage Step 1
  156.         If GetMessage(mh4536, i4856) Then
  157.           i4858 = -1
  158.           If FlagIsSet(mh4536.Flags, 2048) Or FlagIsSet(mh4536.Flags, 512) Then
  159.             i4858 = 0
  160.           End If
  161.  1276     If i4858 = -1 Then
  162.             GoSub 3456
  163.           End If
  164.         End If
  165.  1298 Next
  166.  1321 GoSub 3685
  167.       Return 
  168.  1328 If GetHighMessage < Val(s4477) Then
  169.         s4477 = "1"
  170.         s4883 = " Message Pointers not in sync, adjusted high message pointer"
  171.         Print " "
  172.         Print s4883
  173.         UpdateScreen 
  174.         If s4489 = "LOG" Then
  175.           s4883 = " Message Pointers not in sync, adjusted high message pointer"
  176.           ActivityLog s4883
  177.         End If
  178.       End If
  179.  1417 Return 
  180.  1418 Open s4901 For Binary As 2
  181.       s4883 = mh4536.From
  182.       Sub4700((36), s4883)
  183.       s4883 = mh4536.To
  184.       Sub4700((36), s4883)
  185.       s4883 = mh4536.Subject
  186.       Sub4700((72), s4883)
  187.       s4883 = FormatDate(mh4536.MsgTime.D, "dd/mm/yy")
  188.       s4883 = Mid(s4883, 1, 2) + " " + s4497(Val(Mid(s4883, 4, 2))) + " " + Mid(s4883, 7, 2) + "  " + FormatTime(mh4536.MsgTime.T, "hh:mm:ss")
  189.       Sub4700((20), s4883)
  190.       i4864 = mh4536.FidoToZone
  191.       i4870 = mh4536.FidoToNet
  192.       i4876 = mh4536.FidoToNode
  193.       i4909 = mh4536.FidoToPoint
  194.       s4493 = Str(i4864) + ":" + Str(i4870) + "/" + Str(i4876) + "." + Str(i4909)
  195.       s4911 = "INTL " + s4493 + " " + s4481
  196.       s4883 = "0001"
  197.       s4887 = Chr(Val("$" + Left(s4883, 2)))
  198.       s4888 = Chr(Val("$" + Right(s4883, 2)))
  199.       Put 2, -1, s4888 '! 1 bytes
  200.       Put 2, -1, s4887 '! 1 bytes
  201.       s4883 = Right(Hex(i4876), 4)
  202.       s4887 = Chr(Val("$" + Left(s4883, 2)))
  203.       s4888 = Chr(Val("$" + Right(s4883, 2)))
  204.       Put 2, -1, s4888 '! 1 bytes
  205.       Put 2, -1, s4887 '! 1 bytes
  206.       s4883 = Right(Hex(i4874), 4)
  207.       s4887 = Chr(Val("$" + Left(s4883, 2)))
  208.       s4888 = Chr(Val("$" + Right(s4883, 2)))
  209.       Put 2, -1, s4888 '! 1 bytes
  210.       Put 2, -1, s4887 '! 1 bytes
  211.       Put 2, -1, s4880 '! 1 bytes
  212.       Put 2, -1, s4880 '! 1 bytes
  213.       s4883 = Right(Hex(i4868), 4)
  214.       s4887 = Chr(Val("$" + Left(s4883, 2)))
  215.       s4888 = Chr(Val("$" + Right(s4883, 2)))
  216.       Put 2, -1, s4888 '! 1 bytes
  217.       Put 2, -1, s4887 '! 1 bytes
  218.       s4883 = Right(Hex(i4870), 4)
  219.       s4887 = Chr(Val("$" + Left(s4883, 2)))
  220.       s4888 = Chr(Val("$" + Right(s4883, 2)))
  221.       Put 2, -1, s4888 '! 1 bytes
  222.       Put 2, -1, s4887 '! 1 bytes
  223.       s4883 = Right(Hex(i4864), 4)
  224.       s4887 = Chr(Val("$" + Left(s4883, 2)))
  225.       s4888 = Chr(Val("$" + Right(s4883, 2)))
  226.       Put 2, -1, s4888 '! 1 bytes
  227.       Put 2, -1, s4887 '! 1 bytes
  228.       s4883 = Right(Hex(i4862), 4)
  229.       s4887 = Chr(Val("$" + Left(s4883, 2)))
  230.       s4888 = Chr(Val("$" + Right(s4883, 2)))
  231.       Put 2, -1, s4888 '! 1 bytes
  232.       Put 2, -1, s4887 '! 1 bytes
  233.       s4883 = Right(Hex(i4909), 4)
  234.       s4887 = Chr(Val("$" + Left(s4883, 2)))
  235.       s4888 = Chr(Val("$" + Right(s4883, 2)))
  236.       Put 2, -1, s4888 '! 1 bytes
  237.       Put 2, -1, s4887 '! 1 bytes
  238.       s4883 = Right(Hex(i4907), 4)
  239.       s4887 = Chr(Val("$" + Left(s4883, 2)))
  240.       s4888 = Chr(Val("$" + Right(s4883, 2)))
  241.       Put 2, -1, s4888 '! 1 bytes
  242.       Put 2, -1, s4887 '! 1 bytes
  243.       Put 2, -1, s4880 '! 1 bytes
  244.       Put 2, -1, s4880 '! 1 bytes
  245.       s4883 = "0183"
  246.       If i4870 <> 203 Or i4864 <> 1 Then
  247.         s4883 = "0101"
  248.       End If
  249.  2835 s4887 = Chr(Val("$" + Left(s4883, 2)))
  250.       s4888 = Chr(Val("$" + Right(s4883, 2)))
  251.       Put 2, -1, s4888 '! 1 bytes
  252.       Put 2, -1, s4887 '! 1 bytes
  253.       Put 2, -1, s4880 '! 1 bytes
  254.       Put 2, -1, s4880 '! 1 bytes
  255.       Put 2, -1, s4882 '! 1 bytes
  256.       Close 2
  257.       Return 
  258.  2962 Open s4901 For Append As 2
  259.       s4883 = s4911 + s4881 + s4882 + "PID: NetXPort " + s4463 + " [UNREG]"
  260.       If i4471 Then
  261.         s4883 = s4911 + s4881 + s4882 + "PID: NetXPort " + s4463 + " [REG]"
  262.       End If
  263.  3080 Print #2, s4883
  264.       i4915 = 0
  265.       Open s4897 For Input As 1
  266.  3114 Do While Not EOF(1)
  267.         i4915 = i4915 + 1
  268.         Input #1, s4883
  269.         Print #2, s4883
  270.       Loop
  271.  3163 Close 1
  272.       s4883 = Str(i4915) + " line message exported from " + s4473
  273.       Print " "
  274.       Print s4883
  275.       s4883 = "  Msg #" + Str(i4856) + " to " + mh4536.To
  276.       Print s4883
  277.       UpdateScreen 
  278.       If s4489 = "LOG" Then
  279.         s4883 = Str(i4915) + " line message exported from " + s4473
  280.         ActivityLog s4883
  281.         s4883 = "  Msg #" + Str(i4856) + " to " + mh4536.To
  282.         ActivityLog s4883
  283.       End If
  284.  3353 Print #2, " "
  285.       If i4471 Then
  286.         Print #2, "--- NetXPort, "; s4463; " Reg to "; MakeWild.RegString
  287.       Else
  288.  3416   Print #2, "--- NetXPort, "; s4463; " UNREGISTERED Evaluation Copy (c) charles.meadows@omnibbs.com"
  289.       End If
  290.  3439 Print #2, s4880
  291.       Close 2
  292.       Return 
  293.  3456 If GetMessageText(i4856, s4897) Then
  294.  3496   For i4878 = 1 To 9999 Step 1
  295.           s4883 = Str(i4878)
  296.           s4901 = s4485 + Trim(s4883) + ".MSG"
  297.           If Not Exists(s4901) Then
  298.             GoSub 1418
  299.             GoSub 2962
  300.             i4891 = i4891 + 1
  301.             mh4536.Flags = mh4536.Flags Or 2048
  302.             UpdateMessage(mh4536, "")
  303.             Return 
  304.           End If
  305.  3661   Next
  306.       End If
  307.  3684 Return 
  308.  3685 If GetHighMessage > Val(s4477) Then
  309.         s4477 = Str(GetHighMessage)
  310.         Open s4893 For Output As 1
  311.         Print #1, s4473
  312.         Print #1, s4477
  313.         Print #1, s4481
  314.         Print #1, s4485
  315.         Print #1, s4489
  316.         Print #1, l4467
  317.         Print #1, " "
  318.         Print #1, "; line  1 is the WildCat echo for internet netmail to export "
  319.         Print #1, "; line  2 is the starting message number for your WildCat echo"
  320.         Print #1, "; line  3 is your Fidonet Address, fido points NOT supported!"
  321.         Print #1, "; line  4 is your fidonet netmail directory                  "
  322.         Print #1, "; line  5 use LOG to log messages to the activity log, or use NOLOG"
  323.         Print #1, "; line  6 is your registeration key, use 0 if unregistered.  "
  324.         Print #1, " "
  325.         Close 1
  326.       End If
  327.  3872 Return 
  328.  3873 s4883 = "NetXPort UNREGISTERED!, Exported " + Str(i4891) + " messages, using " + s4893
  329.       If i4471 Then
  330.         s4883 = "NetXPort Registered!, Exported " + Str(i4891) + " messages, using " + s4893
  331.       End If
  332.  3948 Print " "
  333.       Print s4883
  334.       UpdateScreen 
  335.       If i4891 > 0 And s4489 = "LOG" Then
  336.         ActivityLog s4883
  337.       End If
  338.  4002 Print " "
  339.       Print "Done with NetXPort"
  340.       UpdateScreen 
  341.       Return 
  342.  
  343. '! Called 1 time
  344.       Function Func4076(l65534 As Long, l65532 As Long) As Integer
  345.         Dim l65431 As Long
  346.         Dim i65435 As Integer
  347.         Dim l65437 As Long
  348.         Dim i65441 As Integer
  349.         Dim l65443 As Long
  350.         Dim i65447 As Integer
  351.         Dim s65453 As String*7
  352.         Dim s65460 As String*30
  353.         Dim s65490 As String*30
  354.         Dim l65520 As Long
  355.         Dim l65524 As Long
  356.         Dim i65528 As Integer
  357.  
  358.         s65490 = Trim(UCase(MakeWild.BBSName))
  359.         s65460 = ""
  360.  4146   For i65528 = 1 To Len(s65490) Step 1
  361.           s65453 = Mid(s65490, i65528, 1)
  362.           If Trim(s65453) <> "" Then
  363.             s65460 = s65460 + s65453
  364.           End If
  365.  4260   Next
  366.  4283   l65524 = 0
  367.  4317   For i65528 = 1 To Len(s65460) Step 1
  368.           l65524 = l65524 + Asc(Mid(s65460, i65528, 1))
  369.         Next
  370.  4421   s65453 = Trim(UCase(MakeWild.RegString))
  371.         l65520 = 0
  372.  4478   For i65528 = 1 To Len(s65453) Step 1
  373.           l65520 = l65520 + Asc(Mid(s65453, i65528, 1))
  374.         Next
  375.  4582   l65520 = l65520 + l65524
  376.         l65520 = l65520 * 7
  377.         l65520 = l65520 * l65532
  378.         l65520 = l65520 + l65532
  379.         If l65520 = l65534 Then
  380.           Func4076 = - 1
  381.         Else
  382.  4686     Func4076 = 0
  383.         End If
  384.  4692
  385.       End Function
  386.  
  387. '! Called 4 times
  388.       Sub Sub4700(i65534 As Integer, s65532 As String)
  389.         Dim l65515 As Long
  390.         Dim i65519 As Integer
  391.         Dim l65521 As Long
  392.         Dim i65525 As Integer
  393.         Dim s65527 As String*1
  394.         Dim i65528 As Integer
  395.         Dim i65530 As Integer
  396.  
  397.  4740   For i65528 = 1 To Len(Trim(s65532)) Step 1
  398.           s65527 = Mid(s65532, i65528, 1)
  399.           Put 2, -1, s65527 '! 1 bytes
  400.         Next
  401.  4848   If Len(Trim(s65532)) < i65534 Then
  402.           i65530 = i65534 - Len(Trim(s65532))
  403.  4925     For i65528 = 1 To i65530 Step 1
  404.             Put 2, -1, s4880 '! 1 bytes
  405.           Next
  406.         End If
  407.  5011
  408.       End Sub
  409.  
  410. '! Called 1 time
  411.       Sub Sub5014(s65534 As String)
  412.         Dim i65524 As Integer
  413.         Dim i65526 As Integer
  414.         Dim i65528 As Integer
  415.         Dim i65530 As Integer
  416.         Dim i65532 As Integer
  417.  
  418.         i65532 = InStr(1, s65534, ":")
  419.         i65530 = InStr(i65532, s65534, "/")
  420.         i65528 = InStr(i65530, s65534, ".")
  421.         i65526 = Len(s65534)
  422.         i65524 = i65530 - i65532 + 1
  423.         i4860 = Val(Left(s65534, i65532 - 1))
  424.         i4866 = Val(Mid(s65534, i65532 + 1, i65524))
  425.         If i65528 = 0 Then
  426.           i4872 = Val(Mid(s65534, i65530 + 1, i65526))
  427.           i4905 = 0
  428.         Else
  429.  5241     i65524 = i65528 - i65530 + 1
  430.           i4872 = Val(Mid(s65534, i65530 + 1, i65524))
  431.           i4905 = Val(Mid(s65534, i65528 + 1, i65526))
  432.         End If
  433.  5324
  434.       End Sub
  435.